#ifndef _WX_FONTDLG_H_BASE_
#define _WX_FONTDLG_H_BASE_

#include "wx/defs.h"            // for wxUSE_FONTDLG

#if wxUSE_FONTDLG

#include "wx/dialog.h"          // the base class
#include "wx/cmndata.h"         // wxFontData

class wxFontDialogBase : public wxDialog {
  public:
    // create the font dialog
    wxFontDialogBase() { }
    wxFontDialogBase( wxWindow *parent ) { m_parent = parent; }
    wxFontDialogBase( wxWindow *parent, const wxFontData& data ) { m_parent = parent; InitFontData( &data ); }

    bool Create( wxWindow *parent ) { return DoCreate( parent ); }
    bool Create( wxWindow *parent, const wxFontData& data ) { InitFontData( &data ); return Create( parent ); }

    virtual ~wxFontDialogBase();

    // retrieve the font data
    const wxFontData& GetFontData() const { return m_fontData; }
    wxFontData& GetFontData() { return m_fontData; }
    wxDEPRECATED( wxFontDialogBase( wxWindow *parent, const wxFontData *data ) );
    wxDEPRECATED( bool Create( wxWindow *parent, const wxFontData *data ) );
  protected:
    virtual bool DoCreate( wxWindow *parent ) { m_parent = parent; return true; }
    void InitFontData( const wxFontData *data = NULL ) { if( data ) m_fontData = *data; }
    wxFontData m_fontData;
    DECLARE_NO_COPY_CLASS( wxFontDialogBase )
};

inline wxFontDialogBase::wxFontDialogBase( wxWindow *parent, const wxFontData *data ){
 m_parent = parent; InitFontData( data ); }

inline bool wxFontDialogBase::Create( wxWindow *parent, const wxFontData *data ){
InitFontData( data ); return Create( parent ); }


#if defined( __WXMAC_OSX__ ) && ( MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_2 )
//set to 1 to use native mac font and color dialogs
#define USE_NATIVE_FONT_DIALOG_FOR_MACOSX 1
#else
//not supported on these platforms, leave 0
#define USE_NATIVE_FONT_DIALOG_FOR_MACOSX 0
#endif

#include "wx/gtk/fontdlg.h"

wxFont wxGetFontFromUser( wxWindow *parent = ( wxWindow * )NULL, const wxFont& fontInit = wxNullFont,
                          const wxString& caption = wxEmptyString );

#endif // wxUSE_FONTDLG

#endif
// _WX_FONTDLG_H_BASE_
